﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Drawing;
using System.Drawing.Drawing2D;
using System.Windows.Forms;

namespace QbiconEditor
{
    public interface IQRender
    {
        void RenderMap(QMap map, Graphics graph, List<QMapLayer> exceptLayers, List<QObject> exceptObjects, bool useTextures, bool drawPoints);
      
        void RenderLayers(List<QMapLayer> layers, Graphics graph, List<QMapLayer> exceptLayers, List<QObject> exceptObjects, bool useTextures, bool drawPoints);
      
        void RenderLayer(QMapLayer layer, Graphics graph, List<QObject> exceptObjects, bool useTextures, bool drawPoints);

        void RenderObjects(QObject[] qObjects, Graphics graph, List<QObject> exceptObjects, bool useTexture, bool drawPoints);

        void RenderObject(QObject qObj, Graphics graph, bool textured, bool cornerPoints);
     
        void RenderPointsHints(QPolygone poly, Graphics graph);
      
        void RenderRectPoints(QPoint[] points, Graphics graph, Color color);

        void RenderActiveObject(QObject qObj, Graphics graph, bool asEnabled);
     
        void RenderLineOnScreen(QPoint qp1, QPoint qp2, Graphics graph, Color color, int lineWidth);
     
        void RenderLine(QPoint qp1, QPoint qp2, Graphics graph, Color color, int lineWidth);
   
        void RenderAxes(Graphics graph);

        void RenderGrid(Graphics graph, float step);
    }
}
